package newsSystem.dao;
//导入Admin包中的Admin类
import newsSystem.Admin.AdminInfo;
import newsSystem.Admin.AdminManager;
import newsSystem.utils.DBUtil;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;
//结果集


public class AdminInfoJDBC {
//    public static void main(String[] args) throws Exception {
    public static void adminJDBC(){
//    调用Util里面连接数据库中的类
        Connection connection = null;
        ResultSet resultSet = null;
        Statement statement = null;
        try {
            // 获取数据库连接
            connection = DBUtil.getConnection();

            // 定义 SQL 查询语句
            String sql = "SELECT * FROM admininfo";

            // 创建 Statement 对象执行查询
            statement = connection.createStatement();

            // 执行查询并获取结果集合
            resultSet = statement.executeQuery(sql);
//         创建一个管理员list列表对象
            List<AdminInfo> adminList=new ArrayList<>();
            // 处理结果集合
            while (resultSet.next()) {
                // 获取每一行数据的具体字段值
//               获取管理员adminID
                String adminID = resultSet.getString("AdminID");
//                获取管理员password
                String password = resultSet.getString("AdminPWD");

                // 打印结果
//                System.out.println("管理员账号: " + adminID + ", 管理员密码: " + password);
//            创建管理员对象并且将其添加到集合中去
                AdminInfo admin=new AdminInfo(adminID,password);
//                调用AdminManager类中的添加add方法加入到列表中
                AdminManager.addAdmin(admin);
            }

        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
//            连接结束后释放资源
            DBUtil.closeConnection(connection);
//            释放结果集合
            DBUtil.closeResultSet(resultSet);
//            释放Statement 对象
            DBUtil.closePreparedStatement(statement);
        }
    }



}
